package pers.wensheng.patterns.structural_pattern.adapter_pattern.class_adapter_pattern;

import pers.wensheng.patterns.structural_pattern.adapter_pattern.class_adapter_pattern.entity.SDCard;
import pers.wensheng.patterns.structural_pattern.adapter_pattern.class_adapter_pattern.entity.TFCardImpl;

/**
 * 适配器类
 * SD卡适配TF卡
 * 实现当前系统的业务接口，同时又继承现有组件库中已经存在的组件。
 *
 * 类适配器模式不常用，之只能将TFCardImpl这一种TF卡转成SDCard多种卡。
 */
public class SDAdapterTF extends TFCardImpl implements SDCard {
    /**
     * 适配器方法
     *  从SD卡到TF卡方法转换，读数据
     * @return
     */
    @Override
    public String readSD() {
        System.out.println("我们使用的是适配器读取 TFCard 数据");
        return readTF();
    }

    /**
     * 适配器方法
     *  从SD卡到TF卡方法转换，写数据
     * @param msg
     */
    @Override
    public void writeSD(String msg) {
        System.out.println("我们使用的是适配器写 TFCard 数据");
        writeTF(msg);
    }
}
